/**
 * BM87 合并两个有序的数组
 */

/**
 * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
 *
 *
 * @param A int整型一维数组
 * @param m int整型
 * @param B int整型一维数组
 * @param n int整型
 * @return 无
 */
export function merge(A: number[], m: number, B: number[], n: number) {
  // write code here
  let aIndex = 0;
  let bIndex = 0;
  for (let index = 0; index < m + n; index++) {
    if (aIndex === A.length || A[aIndex] > B[bIndex]) {
      A.splice(aIndex, 0, B[bIndex]);
      aIndex++;
      bIndex++;
    } else {
      aIndex++;
    }
    console.log(aIndex, bIndex, A);
  }
  return A;
}

console.log(merge([1, 2, 3], 3, [2, 5, 6], 3));
